package com.fulihui.weixinclient.model.message;

import javax.xml.bind.annotation.XmlElement;

/**
 * 事件类微信消息模型
 * @author Willard.Hu on 2016/8/19.
 */
public class WeixinEventMessage extends AbstractWeixinMessage {
    private static final long serialVersionUID = -6950011523768013529L;
    /**
     * 事件类型
     * @see MsgEventContents
     */
    @XmlElement(name = "Event")
    private String            event;
    /**
     * 事件KEY值
     * <li>扫描带参数二维码事件(未关注): qrscene_为前缀，后面为二维码的参数值</li>
     * <li>扫描带参数二维码事件(已关注): 是一个32位无符号整数，即创建二维码时的二维码scene_id</li>
     * <li>自定义菜单事件: 与自定义菜单接口中KEY值对应 / 设置的跳转URL</li>
     */
    @XmlElement(name = "EventKey")
    private String            eventKey;
    /**
     * 二维码的ticket
     * <li>扫描带参数二维码事件: 可用来换取二维码图片</li>
     */
    @XmlElement(name = "Ticket")
    private String            ticket;
    /**
     * 地理位置纬度，上报地理位置事件才有该字段
     */
    @XmlElement(name = "Latitude")
    private double            latitude;
    /**
     * 地理位置经度，上报地理位置事件才有该字段
     */
    @XmlElement(name = "Latitude")
    private double            longitude;
    /**
     * 地理位置精度，上报地理位置事件才有该字段
     */
    @XmlElement(name = "Precision")
    private double            precision;

    public String getEvent() {
        return event;
    }

    public void setEvent(String event) {
        this.event = event;
    }

    public String getEventKey() {
        return eventKey;
    }

    public void setEventKey(String eventKey) {
        this.eventKey = eventKey;
    }

    public String getTicket() {
        return ticket;
    }

    public void setTicket(String ticket) {
        this.ticket = ticket;
    }

    public double getLatitude() {
        return latitude;
    }

    public void setLatitude(double latitude) {
        this.latitude = latitude;
    }

    public double getLongitude() {
        return longitude;
    }

    public void setLongitude(double longitude) {
        this.longitude = longitude;
    }

    public double getPrecision() {
        return precision;
    }

    public void setPrecision(double precision) {
        this.precision = precision;
    }
}
